home *** CD-ROM | disk | FTP | other *** search
/ Delphi Developer's Kit 1996 / Delphi Developer's Kit 1996.iso / power / convert / main.pas < prev    next >
Encoding:
Pascal/Delphi Source File  |  1995-12-22  |  2.5 KB  |  116 lines

  1. {Conversion Programme -
  2.  
  3.  Designer:  Craig Ward
  4.  Date:      19/7/95
  5.  
  6.  Function:  Converts values entered by user to format as specified
  7.             by the user.
  8.  
  9. ******************************************************************************}
  10. unit Main;
  11.  
  12. interface
  13.  
  14. uses
  15.   SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
  16.   Forms, Dialogs, StdCtrls, Buttons, ExtCtrls, Cvert, Menus,
  17.   About;
  18.  
  19. type
  20.   TForm1 = class(TForm)
  21.     ValueConverter1: TValueConverter;
  22.     Edit1: TEdit;
  23.     Edit2: TEdit;
  24.     RadioGroup1: TRadioGroup;
  25.     BitBtn1: TBitBtn;
  26.     BitBtn2: TBitBtn;
  27.     MainMenu1: TMainMenu;
  28.     File1: TMenuItem;
  29.     Exit1: TMenuItem;
  30.     Help1: TMenuItem;
  31.     About1: TMenuItem;
  32.     Label1: TLabel;
  33.     Label2: TLabel;
  34.     Execute1: TMenuItem;
  35.     N1: TMenuItem;
  36.     Help2: TMenuItem;
  37.     N2: TMenuItem;
  38.     procedure BitBtn1Click(Sender: TObject);
  39.     procedure BitBtn2Click(Sender: TObject);
  40.     procedure RadioGroup1Click(Sender: TObject);
  41.     procedure FormCreate(Sender: TObject);
  42.     procedure About1Click(Sender: TObject);
  43.     procedure Help2Click(Sender: TObject);
  44.   private
  45.     { Private declarations }
  46.   public
  47.     { Public declarations }
  48.   end;
  49.  
  50. var
  51.   Form1: TForm1;
  52.  
  53. implementation
  54.  
  55. {$R *.DFM}
  56.  
  57. {conversion procedure}
  58. procedure TForm1.BitBtn1Click(Sender: TObject);
  59. var
  60.  dRaw, dRet: double;
  61. begin
  62.  if Edit1.Text = '' then
  63.   exit;
  64.  {convert text entered by the user into float value}
  65.  dRaw := StrToFloat(Edit1.Text);
  66.  {send over the float value to the ValueConverter}
  67.  dRet := ValueConverter1.ConvertValue(dRaw);
  68.  {convert the returned value into text}
  69.  Edit2.Text := FloatToStr(dRet);
  70. end;
  71.  
  72. {close form}
  73. procedure TForm1.BitBtn2Click(Sender: TObject);
  74. begin
  75.  close;
  76. end;
  77.  
  78. {set the conversion routine to be used by ValueConverter -
  79.  note that we have to hard-code the indices. Make sure they don't
  80.  change!}
  81. procedure TForm1.RadioGroup1Click(Sender: TObject);
  82. var
  83.  iConvert: integer;
  84. begin
  85.  iConvert := RadioGroup1.ItemIndex;
  86.  case iConvert of
  87.   0:
  88.    ValueConverter1.Kind := CelsiusConvert;
  89.   1:
  90.    ValueConverter1.Kind := FahrenConvert;
  91.   2:
  92.    ValueConverter1.Kind := MileConvert;
  93.   3:
  94.    ValueConverter1.Kind := KMConvert;
  95.  end;
  96. end;
  97.  
  98. {set the RadioGroup's default}
  99. procedure TForm1.FormCreate(Sender: TObject);
  100. begin
  101.  RadioGroup1.ItemIndex := 1;
  102. end;
  103.  
  104. {show About box}
  105. procedure TForm1.About1Click(Sender: TObject);
  106. begin
  107.  AboutBox.ShowModal;
  108. end;
  109.  
  110. procedure TForm1.Help2Click(Sender: TObject);
  111. begin
  112.  Application.HelpContext(2);
  113. end;
  114.  
  115. end.
  116.